package com.itheima.hotle;
import java.util.Scanner;
//酒店中有二维数组来模拟大厦
public class Hotle {
    //    模拟大厦所有房间
    private Room[][] rooms;

    /*
    通过构造方法来创建房间
    一楼标准间
    二楼商务间
    三楼豪华间
    */
    public Hotle() {
        /*
        * 房间编号
    一楼标准：101  102  103  104  105...
    二楼商务：201  202  203 204 205 ....
    三楼豪华：301 302 303 304 305 ....
        */
        rooms = new Room[3][10];      //三层楼，每层十个房间
        for (int i = 0; i < rooms.length; i++) {    //i++楼层
            if (i == 0) {
                for (int j = 0; j < rooms[i].length; j++) {
                    rooms[i][j] = new Room((i + 1) * 100 + j + 1, "标准间", true);
                }
            }
            if (i == 1) {
                for (int j = 0; j < rooms[i].length; j++) {
                    rooms[i][j] = new Room((i + 1) * 100 + j + 1, "商务间", true);
                }
            }
            if (i == 2) {
                for (int j = 0; j < rooms[i].length; j++) {
                    rooms[i][j] = new Room((i + 1) * 100 + j + 1, "豪华间", true);
                }
            }
        }


    }

    //打印房间信息
    public void print() {
        //打印所有房间状态，遍历二维数组
        for (int i = 0; i < rooms.length; i++) {
            for (int j = 0; j < rooms[i].length; j++) {
                Room room = rooms[i][j];
                System.out.println(room);
            }//第二层for
            System.out.println();
        }//第一层for
    }//方法


    /*
    /订房间
     调用该方法时，需要前台传递一个房间编号
     */
    public void order(int roomNo) {
    /*订房需要将房间对象修改状态为false
            Room对象的status修改为false
            假设房间号为102则为room[0][1]
                    */
        Scanner sc = new Scanner(System.in);
        //订房
        Room room = rooms[roomNo / 100 - 1][roomNo % 100 - 1];

        //     room=sc.nextInt();

        if (room.isStatus() == false) {
            System.out.println("抱歉该房间已被预定，请您重新选定房间号码");

        } else {
            //    修改房间状态
            room.setStatus(false);
            System.out.println("已经成功办理入住！！！祝您住房愉快！！！");
        }
    }

    /*
     * 退房
     */
    public void exit(int roomNo) {
        Room room = rooms[roomNo / 100 - 1][roomNo % 100 - 1];
        // 修改房间状态为空闲
        //   room.setStatus(true);
        if (room.isStatus() == true) {
            System.out.println("抱歉该房间是空房，请您重新选定房间号码");

        } else {
            //    修改房间状态
            room.setStatus(true);
            System.out.println("退房办理成功，欢迎下次入住！！！");
        }

    }

}